//放一些通用验证
//file：检查文件
//condition：用什么条件检查文件
interface CheckCondition {
  format?: string[]; //检查他是什么样得格式
  size?: number; //每个上传图片有多大
}
type ErrorType = "size" | "format" | null;
export function beforUploadCheck(file: File, condition: CheckCondition) {
  const { format, size } = condition;
  const isValidFormat = format ? format.includes(file.type) : true;
  const isValidSize = size ? file.size / 1024 / 1024 < size : true;
  let error: ErrorType = null;
  if (!isValidFormat) {
    error = "format";
  }
  if (!isValidSize) {
    error = "size";
  }
  return {
    passed: isValidFormat && isValidSize,
    error,
  };
}
